Accompanying the development of information communication infrastructures in recent years, it has become possible to, by using a computer as an information terminal, participate in a network such as the internet or the like and carry out bidirectional information transmission and reception. Attention is focused on systems which utilize the advantages of the network and provide various types of services. Among such systems, there is a server-client-type network system in which the relationship between a server computer and a client computer is established and on which data is sent and received (uploaded and downloaded or the like). Further, in recent years, peer-to-peer (so-called P2P) type network systems have been realized. A peer-to-peer type network system constructs a system which provides functions such that the respective plurality of computers which are connected to a network are in an equal relationship as peers, or constructs a system in which, further, any one computer has a function section which intensively manages some of the functions.
Various types of network applications are developed in order to execute applications in the above-described network systems. Attention is focused on online games as an example of such network applications. In an online game, due to users who are participating in the online game accessing, from the plural computers that they own, a computer which operates the online game which is the object, the plural users can participate in the online game. Further, there are applications which provide an online message board on a computer, and enable writing to the message board from the user computers. Moreover, there are also known applications which operate a WWW (World Wide Web) server and enable access from clients by a so-called WWW browser via a network.
In a network application system, in order to achieve operation in a common environment at one's own computer (e.g., a client computer or a Peer computer) which is connected to another computer (e.g., a server computer or a Peer computer), it is required that a common application, which is in accordance with common specifications of the network application system, be introduced into each computer.
For example, in an online game which is an example of a network application, various types of specifications are incorporated-in in advance in order to address diverse requirements of users, and the application is provided. Further, it is assumed that plural computers are connected to the computer which is being employed and operated, and there are many cases in which access limitations or usage limitations are set in advance.
FIG. 12 schematically shows the architecture of one computer in a network application system. The architecture of FIG. 12 is structured by the hardware of the computer and the software which operates the hardware. A computer 100 is constructed with its structure being a virtual machine 102 which controls the basic operation of the hardware without being influenced by the inherent specifications of each hardware or the operating system (OS). A library 104, which utilizes the virtual machine 102 and operates the computer 100, can be added to the structure of the virtual machine 102. An interface 106, which is for transmitting and receiving data between the virtual machine 102 and the library 104, is provided at both of the virtual machine 102 and the library 104.
A container 110, which is a resource for operating applications at the computer 100, is provided at the virtual machine 102. The container 110 includes a unit 112 for realizing protocol (e.g., HTTP) functions for communication with the exterior. The unit 112 is structured such that data transmission and reception in accordance with HTTP protocol are possible between the unit 112 and exterior devices. A library 114, which is for function expansion or the like of the container 110, can be added to the structure of the container 110. An interface 116, which is for transmission and reception of data between the container 110 and the library 114, is provided at both the container 110 and the library 114. Data 118 within the computer 100 can be accessed from the library 114.
Components 120, 130 can be disposed at the container 110. The component 120 has an application feature which transmits and receives data to and from exterior devices via the unit 112. Therefore, an interface 122 for transmission and reception of data between the container 110 and the component 120 is provided at both the container 110 and the component 120. Further, the component 120 has an interface 124 for transmission and reception of data to and from the virtual machine 102. The component 130 has, at the interior thereof, file data 134, and the file data 134 is structured in cooperation with an inherent library 136 at the component 130. An interface 132 is provided at the container 130 in order to use the internal file data 134 and the library 136.
As described above, the computer 100 requires inherent interfaces for the components and libraries and the like, at the time of adding a library which is feature addition or the like, or at the time of utilizing an application, and the computer 100 utilizes the components and libraries by using these interfaces.